--
-- Juniper Enterprise Specific MIB: NetScreen Manager (NSM) trap MIB.
--
-- Copyright (c) 2002-2006, Juniper Networks, Inc.
-- All rights reserved.
--
-- The contents of this document are subject to change without notice.
--

JUNIPER-NSM-TRAPS DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
        IpAddress
                FROM SNMPv2-SMI
        jnxNsm
                FROM JUNIPER-SMI
        DisplayString, DateAndTime, TruthValue, TEXTUAL-CONVENTION
                FROM SNMPv2-TC;

nsmTrapInfo MODULE-IDENTITY
       LAST-UPDATED "200506301100Z"
       ORGANIZATION "Juniper Networks, Inc"
       CONTACT-INFO
            "        Juniper Technical Assistance Center
                     Juniper Networks, Inc.
                     1194 N. Mathilda Avenue
                     Sunnyvale, CA 94089
                     E-mail: support@juniper.net"
       DESCRIPTION  "NetScreen Manger trap definitions for NSM"
       ::= { jnxNsm 1 }

nsmTrap OBJECT IDENTIFIER ::= { jnxNsm 0 }

---
--- Variables within the NSM Trap Info
--- .2636.6.1.*
---

nsmDayID OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The day id of the log for the specified day (encoded yyyymmdd)"
        ::= { nsmTrapInfo 1 }


nsmRecordID OBJECT-TYPE
        SYNTAX     INTEGER (0..4294967295)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The record id of the log for the specified day (nth log received)"
        ::= { nsmTrapInfo 2 }


nsmTimeReceived OBJECT-TYPE
        SYNTAX     DateAndTime
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Time the log was received by the Mgt-Svr"
        ::= { nsmTrapInfo 3 }


nsmTimeGenerated OBJECT-TYPE
        SYNTAX     DateAndTime
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Time the log was generated by the device"
        ::= { nsmTrapInfo 4 }

nsmDeviceDomain OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The domain for the device that generated this log"
        ::= { nsmTrapInfo 5 }

nsmDeviceDomainVer2 OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The version of the domain that contained the device that generated this log"
        ::= { nsmTrapInfo 6 }

nsmDevice OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The device that generated this log"
        ::= { nsmTrapInfo 7 }

nsmDeviceIp OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "IP address of the device that generated this log"
        ::= { nsmTrapInfo 8 }

nsmCategory OBJECT-TYPE
        SYNTAX    INTEGER {
                self(0),
                config(1),
                traffic(2),
                alarm(3),
                info(4),
                predefined(5),
                predefined1(6),
                custom(7),
                screen(8),
                implicit(9),
                profiler(10)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The type of log (e.g. Info, Misc, Alarm, etc.)"
        ::= { nsmTrapInfo 9 }

nsmSubcategory OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Subcategory values have different semantics depending on the value of the log category."
        ::= { nsmTrapInfo 10 }

nsmSrcZone OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The name of the packet-centric 'inbound' zone"
        ::= { nsmTrapInfo 11 }

nsmSrcIfName OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The name of the packet-centric 'inbound' interface"
        ::= { nsmTrapInfo 12 }

nsmSrcAddr OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The Source Address of the packet that generated the log"
        ::= { nsmTrapInfo 13 }


nsmSrcPort OBJECT-TYPE
        SYNTAX     INTEGER (0..65535)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The Source Port of the packet that generated the log"
        ::= { nsmTrapInfo 14 }

nsmNatSrcAddr OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The NAT'ed Source Address of the packet that generated the log"
        ::= { nsmTrapInfo 15 }


nsmNatSrcPort OBJECT-TYPE
        SYNTAX     INTEGER (0..65535)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The NAT'ed Source Port of the packet that generated the log"
        ::= { nsmTrapInfo 16 }

nsmDstZone OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The name of the packet-centric 'outbound' zone"
        ::= { nsmTrapInfo 17 }

nsmDstIfName OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The name of the packet-centric 'outbound' interface"
        ::= { nsmTrapInfo 18 }

nsmDstAddr OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The Destination Address of the packet that generated the log"
        ::= { nsmTrapInfo 19 }

nsmDstPort OBJECT-TYPE
        SYNTAX     INTEGER (0..65535)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The Destination Port of the packet that generated the log"
        ::= { nsmTrapInfo 20 }

nsmNatDstAddr OBJECT-TYPE
        SYNTAX     IpAddress
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The NAT'ed Destination Address of the packet that generated the log"
        ::= { nsmTrapInfo 21 }

nsmNatDstPort OBJECT-TYPE
        SYNTAX     INTEGER (0..65535)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The NAT'ed Destination Port of the packet that generated the log"
        ::= { nsmTrapInfo 22 }

nsmProtocol OBJECT-TYPE
        SYNTAX  INTEGER {
                hopopt(0),
                icmp(1),
                igmp(2),
                ggp(3),
                ip(4),
                st(5),
                tcp(6),
                cbt(7),
                egp(8),
                igp(9),
                bbn-rcc-mon(10),
                nvp-ii(11),
                pup(12),
                argus(13),
                emcon(14),
                xnet(15),
                chaos(16),
                udp(17),
                mux(18),
                dcn-meas(19),
                hmp(20),
                prm(21),
                xns-idp(22),
                trunk-1(23),
                trunk-2(24),
                leaf-1(25),
                leaf-2(26),
                rdp(27),
                irtp(28),
                iso-tp4(29),
                netblt(30),
                mfe-nsp(31),
                merit-inp(32),
                sep(33),
                a3pc(34),
                idpr-1(35),
                xtp(36),
                ddp(37),
                idpr-cmt(38),
                tp-plusplus(39),
                il(40),
                ipv6(41),
                sdpr(42),
                ipv6-route(43),
                ipv6-frag(44),
                idpr-2(45),
                rsvp(46),
                gre(47),
                mhrp(48),
                bn(49),
                esp(50),
                ah(51),
                i-nslp(52),
                swipe(53),
                narp(54),
                mobile(55),
                tlsp(56),       
                skip(57),
                ipv6-icmp(58),
                ipv6-nonxt(59),
                ipv6-opts(60),
                ahip(61),
                cftp(62),
                alnp(63),
                sat-expak(64),
                kryptolan(65),
                rvd(66),
                ippc(67),
                adfsp(68),
                sat-mon(69),
                visa(70),
                ipcv(71),
                cpnx(72),
                cphb(73),
                wsn(74),
                pvp(75),
                br-sat-mon(76),
                sun-nd(77),
                wb-mon(78),
                wb-expak(79),
                iso-ip(80),
                vmpt(81),
                secure-vmtp(82),
                vines(83),
                ttp(84),
                nsfnet-igp(85),
                dgp(86),
                tcf(87),
                eigrp(88),
                ospfigp(89),
                sprite-rcp(90),
                larp(91),
                mtp(92),
                ax-25(93),
                ipip(94),
                micp(95),
                scc-sp(96),
                etherip(97),
                encap(98),
                apes(99),
                gmtp(100),
                ifmp(101),
                pnni(102),
                pim(103),
                aris(104),
                scps(105),
                qnx(106),
                a-n(107),
                ipcomp(108),
                snp(109),
                compat-peer(110),
                ipx-in-ip(111),
                vrrp(112),
                pgm(113),
                hop-0(114),
                l2tp(115),
                ddx(116),
                iatp(117),
                stp(118),
                srp(119),
                uti(120),
                smp(121),
                ssm(122),
                ptp(123),
                isis(124),
                fire(125),
                crtp(126),
                crudp(127),
                sscopmce(128),
                iplt(129),
                sps(130),
                pipe(131),
                sctp(132),
                fc(133),
                rsvp-e2e-ignore(134),
                reserved(255)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The protocol that the packet that generated this log was using"
        ::= { nsmTrapInfo 23 }

nsmRuleDomain OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The Domain that contained the rule that generated this log"
        ::= { nsmTrapInfo 24 }

nsmRuleDomainVer OBJECT-TYPE
        SYNTAX     INTEGER (0..255)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The version of the domain that contained the rule that generated this log"
        ::= { nsmTrapInfo 25 }

nsmPolicy OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The policy in a specific version of a domain that contained the rule that generated this log"
        ::= { nsmTrapInfo 26 }

nsmRulebase OBJECT-TYPE
        SYNTAX     INTEGER {
                none(0),
                main(1),
                fw(2),
                idp(3),
                honeypot(4),
                backdoor(5),
                synpro(6),
                vpn(7),
                mpolicy(8)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The rulebase inside the policy in a specific version of a domain that generated this log"
        ::= { nsmTrapInfo 27 }

nsmRuleNumber OBJECT-TYPE
        SYNTAX     INTEGER (0..65535)
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The rule in the rulebase in the policy in the specific version of a domain that generated this log"
        ::= { nsmTrapInfo 28 }

nsmAction OBJECT-TYPE
        SYNTAX     INTEGER {
                accept(0),
                drop-packet(1),
                drop(2),
                close(3),
                close-client(4),
                close-server(5),
                ignore(6),
                dismiss(7),
                not-set(8)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The action the device performed on that packet / connection that generated this log"
        ::= { nsmTrapInfo 29 }

nsmSeverity OBJECT-TYPE
        SYNTAX     INTEGER {
                not-set(0),
                unused1(1),
                info(2),
                warning(3),
                minor(4),
                major(5),
                unused2(6),
                critical(7)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The severity rating associated with this kind of log"
        ::= { nsmTrapInfo 30 }

nsmIsAlert OBJECT-TYPE
        SYNTAX     TruthValue
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "A statement on if logs of this type are to alert the user"
        ::= { nsmTrapInfo 31 }

nsmMisc OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Miscellaneous information associated with the event (typically the
                repeat count of the event)"
        ::= { nsmTrapInfo 32 }

nsmUser OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The name of the user associated with the event"
        ::= { nsmTrapInfo 33 }

nsmApp OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The 'application' associated with this log"
        ::= { nsmTrapInfo 34 }

nsmUri OBJECT-TYPE
        SYNTAX     DisplayString
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The 'Universal Resource Indicator' associated with this log"
        ::= { nsmTrapInfo 35 }

nsmElapsedSecs OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies how long the session lasted"
        ::= { nsmTrapInfo 36 }

nsmBytesIn OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies the number of 'inbound' bytes"
        ::= { nsmTrapInfo 37 }

nsmBytesOut OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies the number of 'outbound' bytes"
        ::= { nsmTrapInfo 38 }


nsmBytesTotal OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies bytes-in + bytes-out"
        ::= { nsmTrapInfo 39 }

nsmPacketsIn OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies the number of 'inbound' packets"
        ::= { nsmTrapInfo 40 }

nsmPacketsOut OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies the number of 'outbound' packets"
        ::= { nsmTrapInfo 41 }


nsmPacketsTotal OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "For sessions, specifies packets-in + packets-out"
        ::= { nsmTrapInfo 42 }

nsmRepeatCount OBJECT-TYPE
        SYNTAX     INTEGER
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The number of logs the device compressed into this one log"
        ::= { nsmTrapInfo 43 }


nsmHasPacketData OBJECT-TYPE
        SYNTAX     TruthValue
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Specifies if this log has associated packet data"
        ::= { nsmTrapInfo 44 }


nsmVarDataEnum OBJECT-TYPE
        SYNTAX     INTEGER {
                none(0),
                test(1),
                ftp(2),
                sip(3),
                msrpc-udp(4),
                msrpc-tcp(5),
                portmapper(6),
                http(7),
                smtp(8),
                pop3(9),
                imap(10),
                telnet(11),
                rtsp(12),
                whois(13),
                icmp(14),
                arp(15),
                tcp(16),
                dns(17),
                finger(18),
                ptype(19),
                ymsg-v2(20),
                msn-v2(21),
                smb(22),
                gnutella-v2(23),
                tbd-24(24),
                scan(25),
                tbd-26(26),
                tbd-27(27),
                tbd-28(28),
                dhcp(29),
                tbd-30(30),
                idp(31),
                bwmon(32),
                irc(33),
                ymsg(34),
                ident(35),
                nntp(36),
                aim(37),
                rusers(38),
                tbd-39(39),
                gopher(40),
                tbd-41(41),
                msn(42),
                gnutella(43),
                nfs(44),
                attalarm(45)
        }
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "The kind of variable data (if any) associated with this log"
        ::= { nsmTrapInfo 45 }

nsmVarData OBJECT-TYPE
        SYNTAX  OCTET STRING
        MAX-ACCESS accessible-for-notify
        STATUS     current
        DESCRIPTION
                "Variable data"
        ::= { nsmTrapInfo 46 }

nsmTrapNotification NOTIFICATION-TYPE
        OBJECTS {
            nsmDayID,
            nsmRecordID,
            nsmTimeReceived,
            nsmTimeGenerated,
            nsmDeviceDomain,
            nsmDeviceDomainVer2,
            nsmDevice,
            nsmDeviceIp,
            nsmCategory,
            nsmSubcategory,
            nsmSrcZone,
            nsmSrcIfName,
            nsmSrcAddr,
            nsmSrcPort,
            nsmNatSrcAddr,
            nsmNatSrcPort,
            nsmDstZone,
            nsmDstIfName,
            nsmDstAddr,
            nsmDstPort,
            nsmNatDstAddr,
            nsmNatDstPort,
            nsmProtocol,
            nsmRuleDomain,
            nsmRuleDomainVer,
            nsmPolicy,
            nsmRulebase,
            nsmRuleNumber,
            nsmAction,
            nsmSeverity,
            nsmIsAlert,
            nsmMisc,
            nsmUser,
            nsmApp,
            nsmUri,
            nsmElapsedSecs,
            nsmBytesIn,
            nsmBytesOut,
            nsmBytesTotal,
            nsmPacketsIn,
            nsmPacketsOut,
            nsmPacketsTotal,
            nsmRepeatCount,
            nsmHasPacketData,
            nsmVarDataEnum
          }
        STATUS current
        DESCRIPTION
                "A trap describing one log data."
        ::= { nsmTrap 1 }

END